package br.urca.model.json;

import java.util.Comparator;

import br.urca.model.AlunoCurso;
import br.urca.model.Frequencia;
import br.urca.model.FrequenciaHist;

public class AlunoFrequencia {
	
	public static final Comparator<AlunoFrequencia> POR_NOME = new Comparator<AlunoFrequencia>() {

		@Override
		public int compare(AlunoFrequencia o1, AlunoFrequencia o2) {
			int nomeComparacao = o1.alunoCurso.getAluno().getNome()
					.compareTo(o2.alunoCurso.getAluno().getNome());
			if (nomeComparacao != 0){  
                return nomeComparacao;  
            } 
			return o1.alunoCurso.getMatricula().compareTo(o2.alunoCurso.getMatricula());
		}
	};
	
	private Frequencia frequencia;
	private FrequenciaHist frequenciaHist;
	private AlunoCurso alunoCurso;
	private short qtdFaltas;
	
	public AlunoFrequencia(FrequenciaHist frequenciaHist, AlunoCurso alunoCurso) {
		super();
		this.frequenciaHist = frequenciaHist;
		this.alunoCurso = alunoCurso;
		this.qtdFaltas = frequenciaHist.getAusencias();
	}
	
	public AlunoFrequencia(Frequencia frequencia, AlunoCurso alunoCurso) {
		super();
		this.frequencia = frequencia;
		this.alunoCurso = alunoCurso;
		this.qtdFaltas = frequencia.getAusencias();
	}

	public Frequencia getFrequencia() {
		return frequencia;
	}

	public void setFrequencia(Frequencia frequencia) {
		this.frequencia = frequencia;
	}

	public FrequenciaHist getFrequenciaHist() {
		return frequenciaHist;
	}

	public void setFrequenciaHist(FrequenciaHist frequenciaHist) {
		this.frequenciaHist = frequenciaHist;
	}

	public AlunoCurso getAlunoCurso() {
		return alunoCurso;
	}

	public void setAlunoCurso(AlunoCurso alunoCurso) {
		this.alunoCurso = alunoCurso;
	}

	public short getQtdFaltas() {
		return qtdFaltas;
	}

	public void setQtdFaltas(short qtdFaltas) {
		this.qtdFaltas = qtdFaltas;
	}
	

}
